1   package uba.db.column.io;
2   
3   import java.io.ByteArrayInputStream;
4   import java.io.ByteArrayOutputStream;
5   import java.io.DataInputStream;
6   import java.io.DataOutputStream;
7   
8   import uba.db.column.IntegerColumnSpecification;
9   
10  import junit.framework.TestCase;
11  
12  /***
13   * Test de unidad para {@link IntegerColumnWriter}.
14   *
15   * @version $Revision: 1.4 $
16   */
17  public class IntegerColumnWriterTest extends TestCase {
18      private IntegerColumnWriter writer;
19      private ByteArrayOutputStream stream;
20  
21      /***
22       * @see junit.framework.TestCase#setUp()
23       */
24      protected void setUp() throws Exception {
25          stream = new ByteArrayOutputStream();
26          writer = new IntegerColumnWriter(new IntegerColumnSpecification(
27                  "Integer test col"), new DataOutputStream(stream));
28      }
29  
30      /***
31       * Test: escribir enteros en un stream de bytes.
32       */
33      public void testWrite() throws Exception {
34          writer.write(new Integer(654));
35          byte[] result = stream.toByteArray();
36          assertEquals("un integer deberia ocupar 4 bytes", 4, result.length);
37  
38          DataInputStream resultStream = new DataInputStream(new ByteArrayInputStream(
39                  result));
40  
41          assertEquals(654, resultStream.readInt());
42      }
43  }